home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / include / libintl.h < prev    next >
C/C++ Source or Header  |  2009-10-07  |  5KB  |  125 lines

  1. /* Message catalogs for internationalization.
  2.    Copyright (C) 1995-2002, 2004, 2005 Free Software Foundation, Inc.
  3.    This file is part of the GNU C Library.
  4.    This file is derived from the file libgettext.h in the GNU gettext package.
  5.  
  6.    The GNU C Library is free software; you can redistribute it and/or
  7.    modify it under the terms of the GNU Lesser General Public
  8.    License as published by the Free Software Foundation; either
  9.    version 2.1 of the License, or (at your option) any later version.
  10.  
  11.    The GNU C Library is distributed in the hope that it will be useful,
  12.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14.    Lesser General Public License for more details.
  15.  
  16.    You should have received a copy of the GNU Lesser General Public
  17.    License along with the GNU C Library; if not, write to the Free
  18.    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  19.    02111-1307 USA.  */
  20.  
  21. #ifndef _LIBINTL_H
  22. #define _LIBINTL_H    1
  23.  
  24. #include <features.h>
  25.  
  26. /* We define an additional symbol to signal that we use the GNU
  27.    implementation of gettext.  */
  28. #define __USE_GNU_GETTEXT 1
  29.  
  30. /* Provide information about the supported file formats.  Returns the
  31.    maximum minor revision number supported for a given major revision.  */
  32. #define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
  33.   ((major) == 0 ? 1 : -1)
  34.  
  35. __BEGIN_DECLS
  36.  
  37. /* Look up MSGID in the current default message catalog for the current
  38.    LC_MESSAGES locale.  If not found, returns MSGID itself (the default
  39.    text).  */
  40. extern char *gettext (__const char *__msgid)
  41.      __THROW __attribute_format_arg__ (1);
  42.  
  43. /* Look up MSGID in the DOMAINNAME message catalog for the current
  44.    LC_MESSAGES locale.  */
  45. extern char *dgettext (__const char *__domainname, __const char *__msgid)
  46.      __THROW __attribute_format_arg__ (2);
  47. extern char *__dgettext (__const char *__domainname, __const char *__msgid)
  48.      __THROW __attribute_format_arg__ (2);
  49.  
  50. /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
  51.    locale.  */
  52. extern char *dcgettext (__const char *__domainname,
  53.             __const char *__msgid, int __category)
  54.      __THROW __attribute_format_arg__ (2);
  55. extern char *__dcgettext (__const char *__domainname,
  56.               __const char *__msgid, int __category)
  57.      __THROW __attribute_format_arg__ (2);
  58.  
  59.  
  60. /* Similar to `gettext' but select the plural form corresponding to the
  61.    number N.  */
  62. extern char *ngettext (__const char *__msgid1, __const char *__msgid2,
  63.                unsigned long int __n)
  64.      __THROW __attribute_format_arg__ (1) __attribute_format_arg__ (2);
  65.  
  66. /* Similar to `dgettext' but select the plural form corresponding to the
  67.    number N.  */
  68. extern char *dngettext (__const char *__domainname, __const char *__msgid1,
  69.             __const char *__msgid2, unsigned long int __n)
  70.      __THROW __attribute_format_arg__ (2) __attribute_format_arg__ (3);
  71.  
  72. /* Similar to `dcgettext' but select the plural form corresponding to the
  73.    number N.  */
  74. extern char *dcngettext (__const char *__domainname, __const char *__msgid1,
  75.              __const char *__msgid2, unsigned long int __n,
  76.              int __category)
  77.      __THROW __attribute_format_arg__ (2) __attribute_format_arg__ (3);
  78.  
  79.  
  80. /* Set the current default message catalog to DOMAINNAME.
  81.    If DOMAINNAME is null, return the current default.
  82.    If DOMAINNAME is "", reset to the default of "messages".  */
  83. extern char *textdomain (__const char *__domainname) __THROW;
  84.  
  85. /* Specify that the DOMAINNAME message catalog will be found
  86.    in DIRNAME rather than in the system locale data base.  */
  87. extern char *bindtextdomain (__const char *__domainname,
  88.                  __const char *__dirname) __THROW;
  89.  
  90. /* Specify the character encoding in which the messages from the
  91.    DOMAINNAME message catalog will be returned.  */
  92. extern char *bind_textdomain_codeset (__const char *__domainname,
  93.                       __const char *__codeset) __THROW;
  94.  
  95.  
  96. /* Optimized version of the function above.  */
  97. #if defined __OPTIMIZE__ && !defined __cplusplus
  98.  
  99. /* We need NULL for `gettext'.  */
  100. # define __need_NULL
  101. # include <stddef.h>
  102.  
  103. /* We need LC_MESSAGES for `dgettext'.  */
  104. # include <locale.h>
  105.  
  106. /* These must be macros.  Inlined functions are useless because the
  107.    `__builtin_constant_p' predicate in dcgettext would always return
  108.    false.  */
  109.  
  110. # define gettext(msgid) dgettext (NULL, msgid)
  111.  
  112. # define dgettext(domainname, msgid) \
  113.   dcgettext (domainname, msgid, LC_MESSAGES)
  114.  
  115. # define ngettext(msgid1, msgid2, n) dngettext (NULL, msgid1, msgid2, n)
  116.  
  117. # define dngettext(domainname, msgid1, msgid2, n) \
  118.   dcngettext (domainname, msgid1, msgid2, n, LC_MESSAGES)
  119.  
  120. #endif    /* Optimizing.  */
  121.  
  122. __END_DECLS
  123.  
  124. #endif /* libintl.h */
  125.